home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1994 / MacHack 1994.toast / MacHack™ 1987-1994 / MacHack™ '90 / Source Code ƒ.sea / Source Code ƒ / C++ Files / StringSample.c < prev    next >
MacBinary  |  1990-05-04  |  4.0 KB  |  [TEXT/QED1]

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: MacBinary (archive/macBinary).

ConfidenceProgramDetectionMatch TypeSupport
66% dexvert Compact Compressed (Unix) (archive/compact) ext Supported
10% dexvert MacBinary (archive/macBinary) fallback Supported
1% dexvert Text File (text/txt) fallback Supported
100% file MacBinary II, inited, Fri May 4 17:44:48 1990, modified Fri May 4 17:44:48 1990, creator 'QED1', type ASCII, 3444 bytes "StringSample.c" , at 0xdf4 408 bytes resource default (weak)
99% file data default
74% TrID Macintosh plain text (MacBinary) default
25% TrID MacBinary 2 default (weak)
100% lsar MacBinary default


id metadata
keyvalue
macFileType[TEXT]
macFileCreator[QED1]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 0e 53 74 72 69 6e 67 | 53 61 6d 70 6c 65 2e 63 |..String|Sample.c|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 51 45 44 | 31 01 00 00 00 01 00 00 |.TEXTQED|1.......|
|00000050| 00 00 00 00 00 0d 74 00 | 00 01 98 a2 67 a8 50 a2 |......t.|....g.P.|
|00000060| 67 a8 50 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |g.P.....|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 bd c5 00 00 |........|........|
|00000080| 2f 2f 20 43 6f 70 79 72 | 69 67 68 74 20 31 39 39 |// Copyr|ight 199|
|00000090| 30 20 57 61 6c 64 65 6d | 61 72 20 48 6f 72 77 61 |0 Waldem|ar Horwa|
|000000a0| 74 2e 0d 2f 2f 20 50 65 | 72 6d 69 73 73 69 6f 6e |t..// Pe|rmission|
|000000b0| 20 69 73 20 67 72 61 6e | 74 65 64 20 66 6f 72 20 | is gran|ted for |
|000000c0| 6e 6f 6e 63 6f 6d 6d 65 | 72 63 69 61 6c 20 75 73 |noncomme|rcial us|
|000000d0| 65 20 6f 66 20 74 68 69 | 73 20 63 6f 64 65 2e 0d |e of thi|s code..|
|000000e0| 0d 23 69 6e 63 6c 75 64 | 65 20 3c 54 79 70 65 73 |.#includ|e <Types|
|000000f0| 2e 68 3e 0d 23 69 6e 63 | 6c 75 64 65 20 3c 4d 65 |.h>.#inc|lude <Me|
|00000100| 6d 6f 72 79 2e 68 3e 0d | 23 69 6e 63 6c 75 64 65 |mory.h>.|#include|
|00000110| 20 3c 45 72 72 6f 72 73 | 2e 68 3e 0d 23 69 6e 63 | <Errors|.h>.#inc|
|00000120| 6c 75 64 65 20 3c 73 74 | 64 69 6f 2e 68 3e 0d 23 |lude <st|dio.h>.#|
|00000130| 69 6e 63 6c 75 64 65 20 | 22 48 53 74 72 69 6e 67 |include |"HString|
|00000140| 2e 68 22 0d 0d 2f 2a d1 | d1 d1 d1 d1 d1 d1 d1 d1 |.h"../*.|........|
|00000150| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........|
|00000160| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........|
|00000170| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........|
|00000180| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........|
|00000190| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 2a 2f 0d |........|.....*/.|
|000001a0| 2f 2a 20 53 70 6c 69 74 | 20 74 68 65 20 70 61 74 |/* Split| the pat|
|000001b0| 68 20 6e 61 6d 65 20 69 | 6e 20 70 61 74 68 4e 61 |h name i|n pathNa|
|000001c0| 6d 65 20 69 6e 74 6f 20 | 74 68 65 20 76 6f 6c 75 |me into |the volu|
|000001d0| 6d 65 20 6e 61 6d 65 20 | 28 77 69 74 68 6f 75 74 |me name |(without|
|000001e0| 20 74 68 65 20 63 6f 6c | 6f 6e 29 20 74 68 61 74 | the col|on) that|
|000001f0| 20 69 73 09 2a 2f 0d 2f | 2a 20 73 74 6f 72 65 64 | is.*/./|* stored|
|00000200| 20 69 6e 20 76 6f 6c 75 | 6d 65 4e 61 6d 65 20 61 | in volu|meName a|
|00000210| 6e 64 20 65 76 65 72 79 | 74 68 69 6e 67 20 66 6f |nd every|thing fo|
|00000220| 6c 6c 6f 77 69 6e 67 20 | 69 74 2c 20 77 68 69 63 |llowing |it, whic|
|00000230| 68 20 69 73 20 73 74 6f | 72 65 64 20 69 6e 09 09 |h is sto|red in..|
|00000240| 09 2a 2f 0d 2f 2a 20 70 | 61 72 74 69 61 6c 50 61 |.*/./* p|artialPa|
|00000250| 74 68 4e 61 6d 65 2e 20 | 20 41 20 63 6f 6c 6f 6e |thName. | A colon|
|00000260| 20 69 73 20 70 72 65 70 | 65 6e 64 65 64 20 74 6f | is prep|ended to|
|00000270| 20 70 61 72 74 69 61 6c | 50 61 74 68 4e 61 6d 65 | partial|PathName|
|00000280| 20 69 66 20 69 74 20 64 | 69 64 6e 27 74 20 61 6c | if it d|idn't al|
|00000290| 72 65 61 64 79 20 68 61 | 76 65 09 2a 2f 0d 2f 2a |ready ha|ve.*/./*|
|000002a0| 20 6f 6e 65 2e 20 20 42 | 6f 74 68 20 76 6f 6c 75 | one. B|oth volu|
|000002b0| 6d 65 4e 61 6d 65 20 61 | 6e 64 20 70 61 72 74 69 |meName a|nd parti|
|000002c0| 61 6c 50 61 74 68 4e 61 | 6d 65 20 6d 61 79 20 62 |alPathNa|me may b|
|000002d0| 65 20 6e 69 6c 2c 20 69 | 6e 20 77 68 69 63 68 20 |e nil, i|n which |
|000002e0| 63 61 73 65 20 74 68 65 | 79 20 61 72 65 20 6e 6f |case the|y are no|
|000002f0| 74 09 2a 2f 0d 2f 2a 20 | 72 65 74 75 72 6e 65 64 |t.*/./* |returned|
|00000300| 2e 20 20 42 6f 74 68 20 | 76 6f 6c 75 6d 65 4e 61 |. Both |volumeNa|
|00000310| 6d 65 20 61 6e 64 20 70 | 61 72 74 69 61 6c 50 61 |me and p|artialPa|
|00000320| 74 68 4e 61 6d 65 20 63 | 61 6e 20 61 6c 69 61 73 |thName c|an alias|
|00000330| 20 77 69 74 68 20 70 61 | 74 68 4e 61 6d 65 2e 09 | with pa|thName..|
|00000340| 09 2a 2f 0d 2f 2a d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |.*/./*..|........|
|00000350| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........|
|00000360| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........|
|00000370| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........|
|00000380| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........|
|00000390| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 2a 2f 0d 4f |........|....*/.O|
|000003a0| 53 45 72 72 20 73 70 6c | 69 74 56 6f 6c 75 6d 65 |SErr spl|itVolume|
|000003b0| 4e 61 6d 65 28 63 6f 6e | 73 74 20 53 74 72 69 6e |Name(con|st Strin|
|000003c0| 67 20 26 70 61 74 68 4e | 61 6d 65 2c 20 53 74 72 |g &pathN|ame, Str|
|000003d0| 69 6e 67 20 2a 76 6f 6c | 75 6d 65 4e 61 6d 65 2c |ing *vol|umeName,|
|000003e0| 20 53 74 72 69 6e 67 20 | 2a 70 61 72 74 69 61 6c | String |*partial|
|000003f0| 50 61 74 68 4e 61 6d 65 | 29 0d 20 20 7b 0d 20 20 |PathName|). {. |
|00000400| 53 74 72 69 6e 67 3a 3a | 65 72 72 3d 30 3b 0d 20 |String::|err=0;. |
|00000410| 20 69 6e 74 20 6c 65 6e | 67 74 68 3d 70 61 74 68 | int len|gth=path|
|00000420| 4e 61 6d 65 2e 6c 65 6e | 67 74 68 28 29 3b 0d 0d |Name.len|gth();..|
|00000430| 20 20 66 6f 72 20 28 69 | 6e 74 20 69 3d 30 3b 20 | for (i|nt i=0; |
|00000440| 69 3c 6c 65 6e 67 74 68 | 20 26 26 20 70 61 74 68 |i<length| && path|
|00000450| 4e 61 6d 65 5b 69 5d 21 | 3d 27 3a 27 3b 20 69 2b |Name[i]!|=':'; i+|
|00000460| 2b 29 3b 0d 20 20 69 66 | 20 28 69 3d 3d 6c 65 6e |+);. if| (i==len|
|00000470| 67 74 68 29 0d 20 20 20 | 20 7b 0d 20 20 20 20 69 |gth). | {. i|
|00000480| 66 20 28 76 6f 6c 75 6d | 65 4e 61 6d 65 29 20 76 |f (volum|eName) v|
|00000490| 6f 6c 75 6d 65 4e 61 6d | 65 2d 3e 63 6c 65 61 72 |olumeNam|e->clear|
|000004a0| 28 29 3b 0d 20 20 20 20 | 69 66 20 28 70 61 72 74 |();. |if (part|
|000004b0| 69 61 6c 50 61 74 68 4e | 61 6d 65 29 0d 20 20 20 |ialPathN|ame). |
|000004c0| 20 20 20 7b 0d 20 20 20 | 20 20 20 2a 70 61 72 74 | {. | *part|
|000004d0| 69 61 6c 50 61 74 68 4e | 61 6d 65 3d 70 61 74 68 |ialPathN|ame=path|
|000004e0| 4e 61 6d 65 3b 0d 20 20 | 20 20 20 20 28 2a 70 61 |Name;. | (*pa|
|000004f0| 72 74 69 61 6c 50 61 74 | 68 4e 61 6d 65 29 5e 3d |rtialPat|hName)^=|
|00000500| 27 3a 27 3b 0d 20 20 20 | 20 20 20 7d 0d 20 20 20 |':';. | }. |
|00000510| 20 7d 0d 20 20 65 6c 73 | 65 0d 20 20 20 20 7b 0d | }. els|e. {.|
|00000520| 20 20 20 20 53 74 72 69 | 6e 67 20 70 61 74 68 4e | Stri|ng pathN|
|00000530| 61 6d 65 32 3d 70 61 74 | 68 4e 61 6d 65 3b 0d 20 |ame2=pat|hName;. |
|00000540| 20 20 20 69 66 20 28 76 | 6f 6c 75 6d 65 4e 61 6d | if (v|olumeNam|
|00000550| 65 29 20 2a 76 6f 6c 75 | 6d 65 4e 61 6d 65 3d 70 |e) *volu|meName=p|
|00000560| 61 74 68 4e 61 6d 65 32 | 2e 73 75 62 73 74 72 28 |athName2|.substr(|
|00000570| 30 2c 69 29 3b 0d 20 20 | 20 20 69 66 20 28 70 61 |0,i);. | if (pa|
|00000580| 72 74 69 61 6c 50 61 74 | 68 4e 61 6d 65 29 20 2a |rtialPat|hName) *|
|00000590| 70 61 72 74 69 61 6c 50 | 61 74 68 4e 61 6d 65 3d |partialP|athName=|
|000005a0| 70 61 74 68 4e 61 6d 65 | 32 2e 73 75 62 73 74 72 |pathName|2.substr|
|000005b0| 28 69 2c 6c 65 6e 67 74 | 68 2d 69 29 3b 0d 20 20 |(i,lengt|h-i);. |
|000005c0| 20 20 7d 0d 20 20 72 65 | 74 75 72 6e 20 53 74 72 | }. re|turn Str|
|000005d0| 69 6e 67 3a 3a 65 72 72 | 3b 0d 20 20 7d 0d 0d 0d |ing::err|;. }...|
|000005e0| 2f 2a d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |/*......|........|
|000005f0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........|
|00000600| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........|
|00000610| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........|
|00000620| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........|
|00000630| d1 d1 d1 d1 d1 d1 d1 d1 | 2a 2f 0d 2f 2a 20 53 70 |........|*/./* Sp|
|00000640| 6c 69 74 20 74 68 65 20 | 70 61 74 68 20 6e 61 6d |lit the |path nam|
|00000650| 65 20 69 6e 20 70 61 72 | 74 69 61 6c 50 61 74 68 |e in par|tialPath|
|00000660| 4e 61 6d 65 20 69 6e 74 | 6f 20 74 68 65 20 6c 61 |Name int|o the la|
|00000670| 73 74 20 6e 61 6d 65 20 | 28 6f 70 74 69 6f 6e 61 |st name |(optiona|
|00000680| 6c 6c 79 20 66 6f 6c 6c | 6f 77 65 64 20 62 79 20 |lly foll|owed by |
|00000690| 61 09 2a 2f 0d 2f 2a 20 | 63 6f 6c 6f 6e 2c 20 77 |a.*/./* |colon, w|
|000006a0| 68 69 63 68 20 69 73 20 | 72 65 6d 6f 76 65 64 29 |hich is |removed)|
|000006b0| 20 74 68 61 74 20 69 73 | 20 73 74 6f 72 65 64 20 | that is| stored |
|000006c0| 69 6e 20 66 69 6c 65 4e | 61 6d 65 20 61 6e 64 20 |in fileN|ame and |
|000006d0| 65 76 65 72 79 74 68 69 | 6e 67 20 70 72 65 63 65 |everythi|ng prece|
|000006e0| 64 69 6e 67 20 69 74 2c | 09 2a 2f 0d 2f 2a 20 77 |ding it,|.*/./* w|
|000006f0| 68 69 63 68 20 69 73 20 | 73 74 6f 72 65 64 20 69 |hich is |stored i|
|00000700| 6e 20 64 69 72 4e 61 6d | 65 2e 20 20 42 6f 74 68 |n dirNam|e. Both|
|00000710| 20 66 69 6c 65 4e 61 6d | 65 20 61 6e 64 20 64 69 | fileNam|e and di|
|00000720| 72 4e 61 6d 65 20 6d 61 | 79 20 62 65 20 6e 69 6c |rName ma|y be nil|
|00000730| 2c 20 69 6e 20 77 68 69 | 63 68 20 63 61 73 65 09 |, in whi|ch case.|
|00000740| 2a 2f 0d 2f 2a 20 74 68 | 65 79 20 61 72 65 20 6e |*/./* th|ey are n|
|00000750| 6f 74 20 72 65 74 75 72 | 6e 65 64 2e 20 20 42 6f |ot retur|ned. Bo|
|00000760| 74 68 20 66 69 6c 65 4e | 61 6d 65 20 61 6e 64 20 |th fileN|ame and |
|00000770| 64 69 72 4e 61 6d 65 20 | 63 61 6e 20 61 6c 69 61 |dirName |can alia|
|00000780| 73 20 77 69 74 68 20 70 | 61 72 74 69 61 6c 50 61 |s with p|artialPa|
|00000790| 74 68 4e 61 6d 65 2e 09 | 2a 2f 0d 2f 2a d1 d1 d1 |thName..|*/./*...|
|000007a0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........|
|000007b0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........|
|000007c0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........|
|000007d0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........|
|000007e0| d1 d1 d1 d1 d1 d1 d1 d1 | d1 d1 d1 d1 d1 d1 d1 d1 |........|........|
|000007f0| d1 d1 d1 2a 2f 0d 4f 53 | 45 72 72 20 73 70 6c 69 |...*/.OS|Err spli|
|00000800| 74 50 61 72 74 69 61 6c | 50 61 74 68 4e 61 6d 65 |tPartial|PathName|
|00000810| 28 63 6f 6e 73 74 20 53 | 74 72 69 6e 67 20 26 70 |(const S|tring &p|
|00000820| 61 72 74 69 61 6c 50 61 | 74 68 4e 61 6d 65 2c 20 |artialPa|thName, |
|00000830| 53 74 72 69 6e 67 20 2a | 64 69 72 4e 61 6d 65 2c |String *|dirName,|
|00000840| 20 53 74 72 69 6e 67 20 | 2a 66 69 6c 65 4e 61 6d | String |*fileNam|
|00000850| 65 29 0d 20 20 7b 0d 20 | 20 53 74 72 69 6e 67 3a |e). {. | String:|
|00000860| 3a 65 72 72 3d 30 3b 0d | 20 20 4f 53 45 72 72 20 |:err=0;.| OSErr |
|00000870| 65 72 72 3d 30 3b 0d 20 | 20 53 74 72 69 6e 67 20 |err=0;. | String |
|00000880| 70 61 72 74 69 61 6c 50 | 61 74 68 4e 61 6d 65 32 |partialP|athName2|
|00000890| 3d 70 61 72 74 69 61 6c | 50 61 74 68 4e 61 6d 65 |=partial|PathName|
|000008a0| 3b 0d 20 20 69 6e 74 20 | 6c 65 6e 67 74 68 3d 70 |;. int |length=p|
|000008b0| 61 72 74 69 61 6c 50 61 | 74 68 4e 61 6d 65 32 2e |artialPa|thName2.|
|000008c0| 6c 65 6e 67 74 68 28 29 | 3b 0d 0d 20 20 69 66 20 |length()|;.. if |
|000008d0| 28 6c 65 6e 67 74 68 20 | 26 26 20 70 61 72 74 69 |(length |&& parti|
|000008e0| 61 6c 50 61 74 68 4e 61 | 6d 65 32 5b 6c 65 6e 67 |alPathNa|me2[leng|
|000008f0| 74 68 2d 31 5d 3d 3d 27 | 3a 27 29 20 6c 65 6e 67 |th-1]=='|:') leng|
|00000900| 74 68 2d 2d 3b 0d 20 20 | 69 66 20 28 21 6c 65 6e |th--;. |if (!len|
|00000910| 67 74 68 29 20 65 72 72 | 3d 62 64 4e 61 6d 45 72 |gth) err|=bdNamEr|
|00000920| 72 3b 0d 20 20 65 6c 73 | 65 0d 20 20 20 20 7b 0d |r;. els|e. {.|
|00000930| 20 20 20 20 66 6f 72 20 | 28 69 6e 74 20 69 3d 6c | for |(int i=l|
|00000940| 65 6e 67 74 68 3b 20 69 | 3e 30 3b 20 2d 2d 69 29 |ength; i|>0; --i)|
|00000950| 0d 20 20 20 20 20 20 69 | 66 20 28 70 61 72 74 69 |. i|f (parti|
|00000960| 61 6c 50 61 74 68 4e 61 | 6d 65 32 5b 69 2d 31 5d |alPathNa|me2[i-1]|
|00000970| 3d 3d 27 3a 27 29 20 62 | 72 65 61 6b 3b 0d 20 20 |==':') b|reak;. |
|00000980| 20 20 69 66 20 28 64 69 | 72 4e 61 6d 65 29 20 2a | if (di|rName) *|
|00000990| 64 69 72 4e 61 6d 65 3d | 70 61 72 74 69 61 6c 50 |dirName=|partialP|
|000009a0| 61 74 68 4e 61 6d 65 32 | 2e 73 75 62 73 74 72 28 |athName2|.substr(|
|000009b0| 30 2c 69 29 3b 0d 20 20 | 20 20 69 66 20 28 66 69 |0,i);. | if (fi|
|000009c0| 6c 65 4e 61 6d 65 29 20 | 2a 66 69 6c 65 4e 61 6d |leName) |*fileNam|
|000009d0| 65 3d 70 61 72 74 69 61 | 6c 50 61 74 68 4e 61 6d |e=partia|lPathNam|
|000009e0| 65 32 2e 73 75 62 73 74 | 72 28 69 2c 6c 65 6e 67 |e2.subst|r(i,leng|
|000009f0| 74 68 2d 69 29 3b 0d 20 | 20 20 20 7d 0d 20 20 69 |th-i);. | }. i|
|00000a00| 66 20 28 21 65 72 72 29 | 20 65 72 72 3d 53 74 72 |f (!err)| err=Str|
|00000a10| 69 6e 67 3a 3a 65 72 72 | 3b 0d 20 20 72 65 74 75 |ing::err|;. retu|
|00000a20| 72 6e 20 65 72 72 3b 0d | 20 20 7d 0d 0d 0d 4f 53 |rn err;.| }...OS|
|00000a30| 45 72 72 20 70 61 72 73 | 65 46 69 6c 65 28 63 68 |Err pars|eFile(ch|
|00000a40| 61 72 20 2a 70 61 74 68 | 4e 61 6d 65 53 74 72 29 |ar *path|NameStr)|
|00000a50| 0d 20 20 7b 0d 20 20 70 | 72 69 6e 74 66 28 22 5c |. {. p|rintf("\|
|00000a60| 22 25 73 5c 22 3a 5c 6e | 22 2c 70 61 74 68 4e 61 |"%s\":\n|",pathNa|
|00000a70| 6d 65 53 74 72 29 3b 0d | 0d 20 20 53 74 72 69 6e |meStr);.|. Strin|
|00000a80| 67 3a 3a 65 72 72 3d 30 | 3b 0d 20 20 53 74 72 69 |g::err=0|;. Stri|
|00000a90| 6e 67 20 70 61 74 68 4e | 61 6d 65 3d 70 61 74 68 |ng pathN|ame=path|
|00000aa0| 4e 61 6d 65 53 74 72 3b | 0d 20 20 4f 53 45 72 72 |NameStr;|. OSErr|
|00000ab0| 20 65 72 72 3d 53 74 72 | 69 6e 67 3a 3a 65 72 72 | err=Str|ing::err|
|00000ac0| 3b 0d 20 20 53 74 72 69 | 6e 67 20 76 6f 6c 75 6d |;. Stri|ng volum|
|00000ad0| 65 4e 61 6d 65 3b 0d 20 | 20 53 74 72 69 6e 67 20 |eName;. | String |
|00000ae0| 70 61 72 74 69 61 6c 50 | 61 74 68 4e 61 6d 65 3b |partialP|athName;|
|00000af0| 0d 20 20 53 74 72 69 6e | 67 20 66 69 6c 65 4e 61 |. Strin|g fileNa|
|00000b00| 6d 65 3b 0d 0d 20 20 69 | 66 20 28 21 65 72 72 29 |me;.. i|f (!err)|
|00000b10| 0d 20 20 20 20 7b 0d 20 | 20 20 20 65 72 72 3d 73 |. {. | err=s|
|00000b20| 70 6c 69 74 56 6f 6c 75 | 6d 65 4e 61 6d 65 28 70 |plitVolu|meName(p|
|00000b30| 61 74 68 4e 61 6d 65 2c | 26 76 6f 6c 75 6d 65 4e |athName,|&volumeN|
|00000b40| 61 6d 65 2c 26 70 61 72 | 74 69 61 6c 50 61 74 68 |ame,&par|tialPath|
|00000b50| 4e 61 6d 65 29 3b 0d 20 | 20 20 20 69 66 20 28 21 |Name);. | if (!|
|00000b60| 65 72 72 29 0d 20 20 20 | 20 20 20 7b 0d 20 20 20 |err). | {. |
|00000b70| 20 20 20 2f 2f 20 49 20 | 61 6d 20 6e 6f 74 20 73 | // I |am not s|
|00000b80| 75 72 65 20 74 68 69 73 | 20 69 73 20 72 69 67 68 |ure this| is righ|
|00000b90| 74 3b 20 70 72 69 6e 74 | 66 20 63 6f 75 6c 64 20 |t; print|f could |
|00000ba0| 61 6c 6c 6f 63 61 74 65 | 20 6d 65 6d 6f 72 79 3f |allocate| memory?|
|00000bb0| 0d 20 20 20 20 20 20 70 | 72 69 6e 74 66 28 22 20 |. p|rintf(" |
|00000bc0| 20 56 6f 6c 75 6d 65 4e | 61 6d 65 3d 5c 22 25 73 | VolumeN|ame=\"%s|
|00000bd0| 5c 22 5c 6e 22 2c 76 6f | 6c 75 6d 65 4e 61 6d 65 |\"\n",vo|lumeName|
|00000be0| 2e 63 53 74 72 69 6e 67 | 28 29 29 3b 0d 20 20 20 |.cString|());. |
|00000bf0| 20 20 20 77 68 69 6c 65 | 20 28 70 61 72 74 69 61 | while| (partia|
|00000c00| 6c 50 61 74 68 4e 61 6d | 65 2e 6c 65 6e 67 74 68 |lPathNam|e.length|
|00000c10| 28 29 29 0d 20 20 20 20 | 20 20 20 20 7b 0d 20 20 |()). | {. |
|00000c20| 20 20 20 20 20 20 65 72 | 72 3d 73 70 6c 69 74 50 | er|r=splitP|
|00000c30| 61 72 74 69 61 6c 50 61 | 74 68 4e 61 6d 65 28 70 |artialPa|thName(p|
|00000c40| 61 72 74 69 61 6c 50 61 | 74 68 4e 61 6d 65 2c 26 |artialPa|thName,&|
|00000c50| 70 61 72 74 69 61 6c 50 | 61 74 68 4e 61 6d 65 2c |partialP|athName,|
|00000c60| 26 66 69 6c 65 4e 61 6d | 65 29 3b 0d 20 20 20 20 |&fileNam|e);. |
|00000c70| 20 20 20 20 69 66 20 28 | 65 72 72 29 0d 09 20 20 | if (|err).. |
|00000c80| 7b 0d 09 20 20 69 66 20 | 28 65 72 72 3d 3d 62 64 |{.. if |(err==bd|
|00000c90| 4e 61 6d 45 72 72 29 20 | 65 72 72 3d 30 3b 0d 09 |NamErr) |err=0;..|
|00000ca0| 20 20 62 72 65 61 6b 3b | 0d 09 20 20 7d 0d 20 20 | break;|.. }. |
|00000cb0| 20 20 20 20 20 20 70 72 | 69 6e 74 66 28 22 20 20 | pr|intf(" |
|00000cc0| 44 69 72 4e 61 6d 65 3d | 5c 22 25 73 5c 22 3b 20 |DirName=|\"%s\"; |
|00000cd0| 46 69 6c 65 4e 61 6d 65 | 3d 5c 22 25 73 5c 22 5c |FileName|=\"%s\"\|
|00000ce0| 6e 22 2c 70 61 72 74 69 | 61 6c 50 61 74 68 4e 61 |n",parti|alPathNa|
|00000cf0| 6d 65 2e 63 53 74 72 69 | 6e 67 28 29 2c 66 69 6c |me.cStri|ng(),fil|
|00000d00| 65 4e 61 6d 65 2e 63 53 | 74 72 69 6e 67 28 29 29 |eName.cS|tring())|
|00000d10| 3b 0d 20 20 20 20 20 20 | 20 20 7d 0d 20 20 20 20 |;. | }. |
|00000d20| 20 20 7d 0d 20 20 20 20 | 7d 0d 20 20 72 65 74 75 | }. |}. retu|
|00000d30| 72 6e 20 65 72 72 3b 0d | 20 20 7d 0d 0d 0d 76 6f |rn err;.| }...vo|
|00000d40| 69 64 20 6d 61 69 6e 28 | 69 6e 74 20 61 72 67 63 |id main(|int argc|
|00000d50| 2c 20 63 68 61 72 20 2a | 2a 61 72 67 76 29 0d 20 |, char *|*argv). |
|00000d60| 20 7b 0d 20 20 69 6e 74 | 20 69 3b 0d 0d 20 20 66 | {. int| i;.. f|
|00000d70| 6f 72 20 28 69 3d 31 3b | 20 69 3c 61 72 67 63 3b |or (i=1;| i<argc;|
|00000d80| 20 69 2b 2b 29 0d 20 20 | 20 20 7b 0d 20 20 20 20 | i++). | {. |
|00000d90| 4f 53 45 72 72 20 65 72 | 72 3d 70 61 72 73 65 46 |OSErr er|r=parseF|
|00000da0| 69 6c 65 28 61 72 67 76 | 5b 69 5d 29 3b 0d 20 20 |ile(argv|[i]);. |
|00000db0| 20 20 69 66 20 28 65 72 | 72 29 20 70 72 69 6e 74 | if (er|r) print|
|00000dc0| 66 28 22 28 45 72 72 6f | 72 20 24 25 58 29 5c 6e |f("(Erro|r $%X)\n|
|00000dd0| 22 2c 65 72 72 29 3b 0d | 20 20 20 20 70 72 69 6e |",err);.| prin|
|00000de0| 74 66 28 22 5c 6e 22 29 | 3b 0d 20 20 20 20 7d 0d |tf("\n")|;. }.|
|00000df0| 20 20 7d 0d 00 00 00 00 | 00 00 00 00 00 00 00 00 | }.....|........|
|00000e00| 00 00 01 00 00 00 01 52 | 00 00 00 52 00 00 00 46 |.......R|...R...F|
|00000e10| 20 61 70 70 6c 69 63 61 | 74 69 6f 6e 73 2e 25 54 | applica|tions.%T|
|00000e20| 68 65 20 73 63 72 61 70 | 20 69 73 20 74 6f 6f 20 |he scrap| is too |
|00000e30| 0e 53 74 72 69 6e 67 53 | 61 6d 70 6c 65 2e 63 6d |.StringS|ample.cm|
|00000e40| 02 00 00 00 54 45 58 54 | 51 45 44 31 01 00 00 00 |....TEXT|QED1....|
|00000e50| 00 00 54 45 58 54 51 45 | 44 31 01 00 00 00 01 00 |..TEXTQE|D1......|
|00000e60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000e70| 00 00 a2 65 03 d3 00 00 | 0d 74 00 00 01 98 64 79 |...e....|.t....dy|
|00000e80| 20 6d 6f 64 69 66 69 65 | 64 2e 20 20 49 74 20 63 | modifie|d. It c|
|00000e90| 61 6e 27 74 20 62 65 20 | 6d 61 64 65 20 72 65 61 |an't be |made rea|
|00000ea0| 64 2d 6f 6e 6c 79 2e 10 | 53 61 76 65 20 63 68 61 |d-only..|Save cha|
|00000eb0| 6e 67 65 73 20 74 6f 20 | 11 53 61 76 65 20 64 6f |nges to |.Save do|
|00000ec0| 63 75 6d 65 6e 74 20 61 | 73 20 16 43 61 6e 27 74 |cument a|s .Can't|
|00000ed0| 20 77 72 69 74 65 20 6f | 6e 74 6f 20 66 69 6c 65 | write o|nto file|
|00000ee0| 20 13 20 63 61 6e 27 74 | 20 62 65 20 72 65 70 6c | . can't| be repl|
|00000ef0| 61 63 65 64 2e 1a 20 63 | 61 6e 27 74 20 62 65 20 |aced.. c|an't be |
|00000f00| 00 00 00 02 00 00 00 00 | 00 48 00 09 4d 6f 6e 61 |........|.H..Mona|
|00000f10| 63 6f 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |co......|........|
|00000f20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 06 00 08 |........|........|
|00000f30| 00 2e 00 31 01 d7 02 71 | 00 2e 00 31 01 d7 02 71 |...1...q|...1...q|
|00000f40| a2 67 62 00 00 00 0d 74 | 00 00 0d 74 00 00 09 a8 |.gb....t|...t....|
|00000f50| 01 00 00 00 01 00 00 00 | 01 52 00 00 00 52 00 00 |........|.R...R..|
|00000f60| 00 46 00 2a 98 08 04 6a | 00 00 00 1c 00 46 00 01 |.F.*...j|.....F..|
|00000f70| 45 51 45 44 00 00 00 12 | 4d 50 53 52 00 00 00 1e |EQED....|MPSR....|
|00000f80| 03 eb ff ff 00 00 00 00 | 00 00 00 00 03 ed ff ff |........|........|
|00000f90| 00 00 00 06 00 2c 3e 28 | 00 00 00 00 00 00 00 00 |.....,>(|........|
|00000fa0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000fb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000fc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000fd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000fe0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000ff0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+